package com.sg.service.base.app;

import com.sg.dto.base.app.req.*;
import com.sg.entity.OmsTask;

import java.util.List;

/**
 * @author ：
 * @version 1.0
 * @date ：
 */
public interface MOmsTaskService {
    /**
     * 3-7-01修改任务
     */
    boolean updateTask(OmsTask omsTask);

    /**
     * 3-7-01批量查任务列表
     */
    List<OmsTask> batchQueryTask(BatchQueryTaskReq reqDto);

    /**
     * 3-7-01查询任务详情
     */
    OmsTask queryTaskDetail(QueryTaskDetailReq reqDto);

    /**
     * 3-7-01查询任务列表
     */
    List<OmsTask> queryTaskList(QueryTaskListReq reqDto);

    /**
     * 3-7-01新增任务
     */
    String addTask(OmsTask omsTask);

    /**
     * 3-7-01批量查询汇报任务by内容表主键ID
     */
    List<OmsTask> batchQueryReportingTask(BatchQueryReportingTaskReq reqDto);

    /**
     * 3-7-01删除任务
     */
    boolean deleteTask(String taskId);

    /**
     * M3-7-01新增汇报任务
     */
    String addReportTask(OmsTask omsTask);

    /**
     * M3-7-01查询汇报任务相关详情
     */
    OmsTask queryReportTaskRelatedDataDetail(OmsTask omsTask);

    /**
     * M3-07-01一键删除汇报任务验证数据
     */
    boolean autoDeleteReportTask(List<String> reqDto);

    /**
     * M3-07-01查询汇报任务系统测试列表
     */
    List<OmsTask> queryReportTaskList(QueryReportTaskListReq reqDto);

    /**
     * 3-7-01查询汇报任务列表
     */
    List<OmsTask> queryReportingTaskList(QueryReportingTaskListReq reqDto);

    /**
     * 3-7-01批量删汇报任务
     */
    boolean batchDeleteReportingTask(List<String> reqDto);

    /**
     * 3-7-01批量查询任务列表By父内容表主键ID
     */
    List<OmsTask> batchQueryTaskListByIds(BatchQueryTaskListByIdsReq reqDto);

    /**
     * 3-7-01批量查询任务列表by虚拟组织ID
     */
    List<OmsTask> batchQueryReportingTaskListByVirtualOrgListByIds(BatchQueryReportingTaskListByVirtualOrgListByIdsReq reqDto);

    /**
     * M3-07-01修改汇报任务
     */
    boolean updateModifyReportTask(OmsTask omsTask);

    /**
     * 3-7-01修改汇报任务
     */
    boolean updateReportingTask(OmsTask omsTask);

    /**
     * 3-7-01批量改汇报任务
     */
    boolean batchUpdateReportingTask(List<OmsTask> omsTask);

    /**
     * 3-7-02查询独立任务列表
     */
    List<OmsTask> queryIndependentTaskList(QueryIndependentTaskListReq reqDto);

    /**
     * 3-7-01新增独立任务（或子任务）
     */
    String addIndependentTask(OmsTask omsTask);

    /**
     * 3-7-02批量查询独立任务
     */
    List<OmsTask> batchQueryIndependentTask(BatchQueryIndependentTaskReq reqDto);

    /**
     * 3-7-01修改独立任务或子任务
     */
    boolean updateIndependentTask(OmsTask omsTask);

    /**
     * 3-7-01查询独立任务详情
     */
    OmsTask queryIndependentTaskDetail(QueryIndependentTaskDetailReq reqDto);

    /**
     * 3-7-01删除独立任务
     */
    boolean deleteIndependentTask(String taskId);

    /**
     * 3-7-02查询工作任务列表
     */
    List<OmsTask> queryWorkTaskList(QueryWorkTaskListReq reqDto);

    /**
     * 3-7-02查询自动汇报任务列表
     */
    List<OmsTask> queryAutomatedReportingTasksList(QueryAutomatedReportingTasksListReq reqDto);

    /**
     * 3-7-01批量查询工作任务
     */
    List<OmsTask> batchQueryWorkTask(BatchQueryWorkTaskReq reqDto);

    /**
     * 3-7-01批量查询大屏工作任务
     */
    List<OmsTask> batchQueryDashboardWorkTask(BatchQueryDashboardWorkTaskReq reqDto);

    /**
     * 3-7-01查询任务列表
     */
    List<OmsTask> queryTaskDataList(QueryTaskDataListReq reqDto);

    /**
     * 3-7-01批量查询汇报任务By归属对象ID
     */
    List<OmsTask> batchQueryReportTask(BatchQueryReportTaskReq reqDto);

    /**
     * 3-7-01批量查询任务进度排行
     */
    List<OmsTask> batchQueryTaskProgressRank(BatchQueryTaskProgressRankReq reqDto);

    /**
     * 3-7-01批量查询任务逾期排行
     */
    List<OmsTask> batchQueryTaskExpiedRank(BatchQueryTaskExpiedRankReq reqDto);

    /**
     * 3-7-01查询任务逾期排行列表
     */
    List<OmsTask> queryTaskExpiedRankList(QueryTaskExpiedRankListReq reqDto);

    /**
     * 3-4-07查询任务进度排行列表(公共)
     */
    List<OmsTask> queryTaskProgressRankListCom(QueryTaskProgressRankListComReq reqDto);

    /**
     * 3-7-01查询时间统计任务列表(公共)
     */
    List<OmsTask> queryTimeStatisticsTasksListCom(QueryTimeStatisticsTasksListComReq reqDto);

    /**
     * 3-7-09批量查询时间统计任务
     */
    List<OmsTask> batchQueryTimeStatisticsTasks(BatchQueryTimeStatisticsTasksReq reqDto);

    /**
     * 3-7-01查询工作任务列表by时间范围列表
     */
    List<OmsTask> queryWrokTaskByTimeRangeList(QueryWrokTaskByTimeRangeListReq reqDto);
/**
 * 3-7-02查询自动汇报任务列表
 */
    //  List<OmsTask> queryAutomatedReportingTasksList(QueryAutomatedReportingTasksListReq reqDto);
    //
}
